/*
 * File: SOH_cycle.h
 *
 * Code generated for Simulink model 'SOH_cycle'.
 *
 * Model version                  : 1.19
 * Simulink Coder version         : 8.11 (R2016b) 25-Aug-2016
 * C/C++ source code generated on : Thu Sep 10 15:11:54 2020
 *
 * Target selection: ert.tlc
 * Embedded hardware selection: STMicroelectronics->ST10/Super10
 * Code generation objectives: Unspecified
 * Validation result: Not run
 */

#ifndef RTW_HEADER_SOH_cycle_h_
#define RTW_HEADER_SOH_cycle_h_
#include <math.h>
#include <stddef.h>
#include <string.h>
#ifndef SOH_cycle_COMMON_INCLUDES_
# define SOH_cycle_COMMON_INCLUDES_
#include "rtwtypes.h"
#endif                                 /* SOH_cycle_COMMON_INCLUDES_ */

#include "SOH_cycle_types.h"
#include "rt_nonfinite.h"
#include "rtGetInf.h"

/* Macros for accessing real-time model data structure */
#ifndef rtmGetErrorStatus
# define rtmGetErrorStatus(rtm)        ((rtm)->errorStatus)
#endif

#ifndef rtmSetErrorStatus
# define rtmSetErrorStatus(rtm, val)   ((rtm)->errorStatus = (val))
#endif

/* Block states (auto storage) for system '<Root>' */
typedef struct {
  int32_T UnitDelay4_DSTATE;           /* '<S2>/Unit Delay4' */
  int32_T UnitDelay5_DSTATE;           /* '<S1>/Unit Delay5' */
} DW_SOH_cycle_T;

/* Constant parameters (auto storage) */
typedef struct {
  /* Computed Parameter: SOH_Life_tableData
   * Referenced by: '<S3>/SOH_Life'
   */
  real32_T SOH_Life_tableData[5];

  /* Computed Parameter: SOH_Life_bp01Data
   * Referenced by: '<S3>/SOH_Life'
   */
  real32_T SOH_Life_bp01Data[5];
} ConstP_SOH_cycle_T;

/* External outputs (root outports fed by signals with auto storage) */
typedef struct {
  real32_T DCapacity;                  /* '<Root>/DCapacity' */
} ExtY_SOH_cycle_T;

/* Real-time Model Data Structure */
struct tag_RTM_SOH_cycle_T {
  const char_T *errorStatus;
};

/* Block states (auto storage) */
extern DW_SOH_cycle_T SOH_cycle_DW;

/* External outputs (root outports fed by signals with auto storage) */
extern ExtY_SOH_cycle_T SOH_cycle_Y;

/* Constant parameters (auto storage) */
extern const ConstP_SOH_cycle_T SOH_cycle_ConstP;

/* Model entry point functions */
extern void SOH_cycle_initialize(void);
extern void SOH_cycle_step(void);
extern void SOH_cycle_terminate(void);

/* Real-time Model object */
extern RT_MODEL_SOH_cycle_T *const SOH_cycle_M;

/*-
 * The generated code includes comments that allow you to trace directly
 * back to the appropriate location in the model.  The basic format
 * is <system>/block_name, where system is the system number (uniquely
 * assigned by Simulink) and block_name is the name of the block.
 *
 * Use the MATLAB hilite_system command to trace the generated code back
 * to the model.  For example,
 *
 * hilite_system('<S3>')    - opens system 3
 * hilite_system('<S3>/Kp') - opens and selects block Kp which resides in S3
 *
 * Here is the system hierarchy for this model
 *
 * '<Root>' : 'SOH_cycle'
 * '<S1>'   : 'SOH_cycle/Charge'
 * '<S2>'   : 'SOH_cycle/Dcharge'
 * '<S3>'   : 'SOH_cycle/SOH'
 */
#endif                                 /* RTW_HEADER_SOH_cycle_h_ */

/*
 * File trailer for generated code.
 *
 * [EOF]
 */
